1. Field of the Invention
The present invention relates generally to storage systems for digital computer and, more particularly, to a read channel employing a Viterbi detector with partial erasure compensation.
2. Description of Related Art
In a magnetic storage system for a digital computer, a digital data sequence is written as a sequence of magnetic flux transitions onto a surface of a magnetic medium in concentric, radially spaced tracks at a predetermined baud rate. The sequence of magnetic flux transitions corresponding to the digital data sequence are written onto the surface of the magnetic medium with a read/write head coil. The digital data sequence serves to modulate current in the read/write head coil.
In order to read the recorded data from the magnetic medium, the read/write head again passes over the surface of the magnetic medium and transduces the magnetic flux transitions into pulses of alternating magnetic polarity in a continuous time analog read signal. These pulses are decoded by read channel circuitry to reproduce the digital data sequence.
Decoding the pulses of alternating magnetic polarity into the digital data sequence can be performed by a peak detector in a conventional analog read channel. In such conventional analog read channel peak detectors, analog circuitry is responsive to threshold crossing or derivative information and detects peaks in the continuous time analog read signal generated by the read head. The continuous time analog read signal is segmented into bit cell periods and interpreted during these bit cell periods. The presence of a peak during the bit cell period is detected as a 1-bit, whereas the absence of a peak is detected as a 0-bit.
Within increasing data density, magnetic flux transitions are packed closer together on the magnetic medium. As a result, adjacent magnetic pulses begin to overlap with one another, causing distortions, generally known as intersymbol interference ("ISI"), in the read signal. ISI can cause a magnetic peak to shift out of its bit cell or to decrease in magnitude, leading to detection errors.
One common detection error occurs when the bit cells are not correctly aligned with the pulses in the continuous time analog read signal. Timing recovery adjusts the bit cell periods so that the magnetic peaks of the continuous time analog read signal occur on average in the center of the bit cells in order to minimize detection errors. As timing information is derived only when peaks are detected, the input digital data sequence is typically run length limited ("RLL"), which places a limit on the maximum on the number of consecutive 0-bits.
The effect of ISI can be reduced by decreasing the data density and/or by employing a coding scheme that places a lower limit on the number of 0-bits that occur between the 1-bits. Thus, a compromise must be reached between the conflicting goals of reducing ISI, which calls for a large number of consecutive 0-bits, and of timing recovery which calls for a small number of consecutive 0-bits. A (d,k) RLL code constrains the code to a minimum of d number of 0-bits between 1-bits and a maximum number of k number of consecutive 0-bits.
Discrete time sequence detectors in sampled amplitude read channels can compensate for limited amounts of ISI and are less susceptible to channel noise than analog peak detectors. As a result, discrete time sequence detectors increase the capacity and reliability of the magnetic storage system and are therefore generally preferred over simple analog peak detectors.
Examples of well known discrete time sequence detection methods include discrete time pulse detection ("DPD"), partial response ("PR") with Viterbi detection, maximum likelihood sequence detection ("MLSD"), decision-feedback equalization ("DFE"), enhanced decision-feedback equalization ("EDFE"), and fixed-delay tree-search with decision-feedback ("FDTS/DF").
Sampled amplitude detection, such as PR with Viterbi detection, allows for increased data density by compensating for ISI as well as the effect of channel noise. In addition, in contrast to conventional peak detection systems that detect the presence or absence of a peak, sampled amplitude detection detects digital data by interpreting or estimating, at discrete time instances, the actual value of the pulse data.
When employing sampled amplitude detection, the read channel generally comprises a sampling device for sampling the analog read signal, a timing recovery circuit for synchronizing the digital data samples to the baud rate, i.e., the code bit rate, a low-pass analog filter to process the read signal before it is sampled to reduce the effects of aliasing, a digital equalizing filter to equalize the digital data sample values according to a desired PR after the digital data signal has been sampled, and a discrete time sequence detector such as a Viterbi detector to interpret or estimate the equalized sample values in context to determine a most likely ("ML") sequence for the digital data sequence, i.e., using MLSD. As such, a sampled amplitude detection read channel can take into account the effects of ISI and channel noise during the detection process to thereby decrease the probability of detection errors and increase the effective signal to noise ratio. Thus, for a given (d,k) RLL code constraint, a sampled amplitude detection read channel allows for significantly higher data density than that provided by conventional analog peak detection read channels.
Several other forms of distortion in addition to ISI are often present in the analog read signal. An example of another form of distortion is partial erasure, caused by partial erasure of magnetically-stored information, particularly at high data densities. In magnetic storage, each bit of the digital information may, for example, be stored as an individual region in which most magnetic domains are oriented in the same direction. However, because a transition from one magnetic orientation to another is not abrupt but takes place over a finite distance, at high data transition densities, adjacent regions of magnetization having differing orientations interact to reduce the strength of magnetization of those individual regions.
For example, if the magnetization in a particular region has a predominantly north-south orientation and both of its neighboring regions have similar orientations, then the strength of its magnetization will be substantially unaltered by its neighbors and there is typically no partial erasure distortion. However, if the north-south oriented magnetization region has one neighbor with an opposite, i.e., south-north, orientation, the border with this neighbor will not be well defined and the net magnetization of the region will be reduced. This reduction in magnetization is exacerbated if both of the magnetization region's neighbors have opposite magnetic orientations. The reduction in the strength of magnetization of neighboring magnetization regions with oppositely oriented neighbors reduces the amplitude of corresponding pulses in the read signal and is referred to as partial erasure. Thus it is preferably for decoders to account for partial erasure.
One conventional solution to the partial erasure problem is to employ a sequence detector that can be matched to a read signal that includes partial erasure. However, conventional channel models for describing partial erasure may result in sequence detectors that are prohibitively complex. One method to simplify the partial erasure model is to model the reduction in amplitude of a pulse by a factor .gamma.&lt;1 if the partial erasure is caused by a single neighboring magnetic transition and by a factor .gamma..sup.2 if the partial erasure is caused by two neighboring magnetic transitions. State machine models for a reduced complexity sequence detector matched to partial erasure in a PR4 d=0 read channel have been derived. However, such conventional solutions to the partial erasure problem are still complex and not optimal.
What is needed is a system and method for providing partial erasure compensation in a simple and efficient manner.